package utils

import (
	"github.com/mojocn/base64Captcha" // 注意将base64Captcha 内容全部拷贝到 base64\!captcha@v1.3.6 内
	"image/color"
)

// Captcha 获取验证码
type Captcha struct {
	Id   string
	BS64 string
}

func GetCaptcha() (id string, base64 string, err error) {
	// 背景颜色的指针
	rgbaColor := color.RGBA{0, 0, 0, 0}

	// 字体列表
	fonts := []string{"wqy-microhei.ttc"}

	// 根据 login.html 32H image的大小生成 --- (高，宽，背景文字的干扰，画线的条数，背景颜色的指针(rgbaColor)，字体列表(), )
	driver := base64Captcha.NewDriverMath(50, 140, 0, 0, &rgbaColor, base64Captcha.DefaultEmbeddedFonts, fonts)

	store := base64Captcha.DefaultMemStore

	// 使用前面的 store 和 driver 生成验证码的实例
	captcha := base64Captcha.NewCaptcha(driver, store)

	//生成验证码
	id, base64, _, err = captcha.Generate()
	return id, base64, err
}
